package cn.ibizlab.core.authentication.provider;

import cn.ibizlab.core.authentication.domain.AuthProvider;

/**
 * 认证服务管理器
 */
public interface AuthenticationServiceManager {

    /**
     * 获取配置对应的认证服务
     * @param provider
     * @return
     */
    AuthenticationService getAuthenticationService(AuthProvider provider);

    /**
     * 注册当前系统可用的认证服务工厂类
     * @param factory
     * @return
     */
    boolean registerAuthenticationServiceFactory(AuthenticationServiceFactory factory);

}
